import axios from 'axios'
import router from '@/router'
import { ElMessage } from 'element-plus'

//创建axios实力对象

const request = axios.create({
    baseURL:'/api',
    //远程请求超时时间
    timeout:6000000
})

// 添加请求拦截器
request.interceptors.request.use(function (config) {
  // 从localStore获取数据
  let userInfo = localStorage.getItem('userInfo')
  if(userInfo){
    let token = JSON.parse(userInfo).token
    config.headers.token=token
  }
  return config;
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
});


//axios 的相应response拦截器
request.interceptors.response.use(
    (response)=>{
        return response.data
    },
    (error) =>{//失败回调
  //401路由跳转到/login
        if(error.response.status===401){
            ElMessage.error('请重新登录')
            router.push('/login')
        }
        else{
            return Promise.reject(error)
        }        
    }
)

export default request
